// Generated from D:/Project/family/family-bucket-server/evil-service/evil-formula-service/src/main/java/com/evil/formula/antlr4/Formula.g4 by ANTLR 4.13.1
package com.evil.formula.antlr4;
import org.antlr.v4.runtime.tree.ParseTreeListener;

/**
 * This interface defines a complete listener for a parse tree produced by
 * {@link FormulaParser}.
 */
public interface FormulaListener extends ParseTreeListener {
	/**
	 * Enter a parse tree produced by {@link FormulaParser#formula}.
	 * @param ctx the parse tree
	 */
	void enterFormula(FormulaParser.FormulaContext ctx);
	/**
	 * Exit a parse tree produced by {@link FormulaParser#formula}.
	 * @param ctx the parse tree
	 */
	void exitFormula(FormulaParser.FormulaContext ctx);
	/**
	 * Enter a parse tree produced by the {@code parens}
	 * labeled alternative in {@link FormulaParser#expr}.
	 * @param ctx the parse tree
	 */
	void enterParens(FormulaParser.ParensContext ctx);
	/**
	 * Exit a parse tree produced by the {@code parens}
	 * labeled alternative in {@link FormulaParser#expr}.
	 * @param ctx the parse tree
	 */
	void exitParens(FormulaParser.ParensContext ctx);
	/**
	 * Enter a parse tree produced by the {@code plusMinus}
	 * labeled alternative in {@link FormulaParser#expr}.
	 * @param ctx the parse tree
	 */
	void enterPlusMinus(FormulaParser.PlusMinusContext ctx);
	/**
	 * Exit a parse tree produced by the {@code plusMinus}
	 * labeled alternative in {@link FormulaParser#expr}.
	 * @param ctx the parse tree
	 */
	void exitPlusMinus(FormulaParser.PlusMinusContext ctx);
	/**
	 * Enter a parse tree produced by the {@code compare}
	 * labeled alternative in {@link FormulaParser#expr}.
	 * @param ctx the parse tree
	 */
	void enterCompare(FormulaParser.CompareContext ctx);
	/**
	 * Exit a parse tree produced by the {@code compare}
	 * labeled alternative in {@link FormulaParser#expr}.
	 * @param ctx the parse tree
	 */
	void exitCompare(FormulaParser.CompareContext ctx);
	/**
	 * Enter a parse tree produced by the {@code unaryOperator}
	 * labeled alternative in {@link FormulaParser#expr}.
	 * @param ctx the parse tree
	 */
	void enterUnaryOperator(FormulaParser.UnaryOperatorContext ctx);
	/**
	 * Exit a parse tree produced by the {@code unaryOperator}
	 * labeled alternative in {@link FormulaParser#expr}.
	 * @param ctx the parse tree
	 */
	void exitUnaryOperator(FormulaParser.UnaryOperatorContext ctx);
	/**
	 * Enter a parse tree produced by the {@code bool}
	 * labeled alternative in {@link FormulaParser#expr}.
	 * @param ctx the parse tree
	 */
	void enterBool(FormulaParser.BoolContext ctx);
	/**
	 * Exit a parse tree produced by the {@code bool}
	 * labeled alternative in {@link FormulaParser#expr}.
	 * @param ctx the parse tree
	 */
	void exitBool(FormulaParser.BoolContext ctx);
	/**
	 * Enter a parse tree produced by the {@code double}
	 * labeled alternative in {@link FormulaParser#expr}.
	 * @param ctx the parse tree
	 */
	void enterDouble(FormulaParser.DoubleContext ctx);
	/**
	 * Exit a parse tree produced by the {@code double}
	 * labeled alternative in {@link FormulaParser#expr}.
	 * @param ctx the parse tree
	 */
	void exitDouble(FormulaParser.DoubleContext ctx);
	/**
	 * Enter a parse tree produced by the {@code list}
	 * labeled alternative in {@link FormulaParser#expr}.
	 * @param ctx the parse tree
	 */
	void enterList(FormulaParser.ListContext ctx);
	/**
	 * Exit a parse tree produced by the {@code list}
	 * labeled alternative in {@link FormulaParser#expr}.
	 * @param ctx the parse tree
	 */
	void exitList(FormulaParser.ListContext ctx);
	/**
	 * Enter a parse tree produced by the {@code error}
	 * labeled alternative in {@link FormulaParser#expr}.
	 * @param ctx the parse tree
	 */
	void enterError(FormulaParser.ErrorContext ctx);
	/**
	 * Exit a parse tree produced by the {@code error}
	 * labeled alternative in {@link FormulaParser#expr}.
	 * @param ctx the parse tree
	 */
	void exitError(FormulaParser.ErrorContext ctx);
	/**
	 * Enter a parse tree produced by the {@code int}
	 * labeled alternative in {@link FormulaParser#expr}.
	 * @param ctx the parse tree
	 */
	void enterInt(FormulaParser.IntContext ctx);
	/**
	 * Exit a parse tree produced by the {@code int}
	 * labeled alternative in {@link FormulaParser#expr}.
	 * @param ctx the parse tree
	 */
	void exitInt(FormulaParser.IntContext ctx);
	/**
	 * Enter a parse tree produced by the {@code mulDiv}
	 * labeled alternative in {@link FormulaParser#expr}.
	 * @param ctx the parse tree
	 */
	void enterMulDiv(FormulaParser.MulDivContext ctx);
	/**
	 * Exit a parse tree produced by the {@code mulDiv}
	 * labeled alternative in {@link FormulaParser#expr}.
	 * @param ctx the parse tree
	 */
	void exitMulDiv(FormulaParser.MulDivContext ctx);
	/**
	 * Enter a parse tree produced by the {@code str}
	 * labeled alternative in {@link FormulaParser#expr}.
	 * @param ctx the parse tree
	 */
	void enterStr(FormulaParser.StrContext ctx);
	/**
	 * Exit a parse tree produced by the {@code str}
	 * labeled alternative in {@link FormulaParser#expr}.
	 * @param ctx the parse tree
	 */
	void exitStr(FormulaParser.StrContext ctx);
	/**
	 * Enter a parse tree produced by the {@code null}
	 * labeled alternative in {@link FormulaParser#expr}.
	 * @param ctx the parse tree
	 */
	void enterNull(FormulaParser.NullContext ctx);
	/**
	 * Exit a parse tree produced by the {@code null}
	 * labeled alternative in {@link FormulaParser#expr}.
	 * @param ctx the parse tree
	 */
	void exitNull(FormulaParser.NullContext ctx);
	/**
	 * Enter a parse tree produced by the {@code func}
	 * labeled alternative in {@link FormulaParser#expr}.
	 * @param ctx the parse tree
	 */
	void enterFunc(FormulaParser.FuncContext ctx);
	/**
	 * Exit a parse tree produced by the {@code func}
	 * labeled alternative in {@link FormulaParser#expr}.
	 * @param ctx the parse tree
	 */
	void exitFunc(FormulaParser.FuncContext ctx);
}